package com.cgtong.android.mvp.contract;

import com.cgtong.android.bean.DayReportBean;
import com.cgtong.android.bean.MonthYearReportBean;
import com.cgtong.android.http.callback.BaseCallBack;
import com.zhouyou.http.exception.ApiException;

import java.util.List;

/**
 * Created by chunc on 2017/10/25.
 */

public interface ProblemCountContract {
    interface Model {
        //日报
        void httpDayReportData(BaseCallBack<List<DayReportBean>> baseCallBack);


        //月报
        void httpMonthReportData(String beginMonth, BaseCallBack<List<MonthYearReportBean>> baseCallBack);

        //年报

        void httpYearReportData(BaseCallBack<List<MonthYearReportBean>> baseCallBack);


    }

    interface View {
        void setRefreshing(boolean isRefresh);

        void setEnableLoadMore(boolean enableLoadMore);

        void onLoadMoreEnd(boolean isLoadMoreEnd);

        void onError(ApiException e);

        void onNullData();


        //日报
        void onHttpDayReportDataSuccess(List<DayReportBean> datas);

        //月报
        void onHttpMonthReportDataSuccess(List<MonthYearReportBean> datas, boolean isRefresh);


        //年报
        void onHttpYearReportDataSuccess(List<MonthYearReportBean> datas);


    }

    interface Presenter {

        //日报
        void httpDayReportData();


        //月报
        void httpMonthReportData(String beginMonth, boolean isRefresh);


        //年报

        void httpYearReportData();

        void onDestroy();

    }
}
